import {BrowserRouter as Router,NavLink,Switch, Redirect,Route} from "react-router-dom"
import {Suspense} from "react" // 路由没加载出来的那个loading
// 导航守卫就是说想进某个路由页面，如果不符合条件，将他挡在外边，不让他进
let RouterView = (props)=>{
      let {RouterList} = props;
      console.log(props)
      // 表示正常的路由，即没有被重定向的路由
      let routerList = RouterList.filter((item,index)=>{
            return !item.to
      })
      // 重定向的路由
      let redirect = RouterList.filter((item,index)=>{
            return item.to
      })[0]
      // console.log(routerList,1111)
      // console.log(redirect,222)
      return (
            <Suspense fallback={<div>...loading</div>}>
                  <Switch>
                        {
                              routerList&&routerList.length?routerList.map((item,index)=>{
								  console.log(item,2222)
                                    //routerProps 是路由信息
                                    return <Route path={item.path} key={index} render={(routerProps)=>{
										//  console.log(item)
                                          if (item.children) { // 说明有二级路由,有二级路由得地方，把二级路由得一级路由渲染出来
                                                return <item.component child={item.children} {...routerProps}></item.component>
                                          }
										//   if (item.shouwei) {
											  
										// 	  let aaa = window.localStorage.getItem("isLogin") 
										// 	  console.log(aaa)
										// 	    if (aaa === "true") {
										// 			// alert(item.path)
										// 			return <item.component {...routerProps}></item.component>
										// 	  	} else {
										// 			return <Redirect from={item.path} to="/login" ></Redirect>
										// 		}

										//   }
                                         return <item.component {...routerProps}></item.component>
                                    }}></Route>
                              }):"暂无路由"
                        }
                        {
                              redirect?<Redirect from={redirect.from} to={redirect.to} ></Redirect>:""
                        }
                  </Switch>
            </Suspense>
      )
}
export default RouterView